как сделеать меню на F3 или любую другую кнопку

Архів · 2011 korolr Статті 13 696

Архівний матеріал ya-cs.ru (2011). Російською. Плагіни й збірки можуть не працювати з ReHLDS та AMXX 1.10.

как сделеать меню на f3 или любую другую кнопку

Автор : ектаз
Специально для Ya-cs.ru

И так сегодня я вам расскажу как сделать меню на F3 или любую другую кнопку
И так берем исходник

#include <amxmodx>
new onoff[33]
public plugin_init()
{
    register_plugin("Menu","1.0","crazzy");
    register_clcmd("player_menu","go_menu"); 
}

public client_authorized(id)
{
    client_cmd(id, "bind ^"F3^" ^"player_menu^"")
}

public func_menu(id, menu, key)
{
  if(key == MENU_EXIT)
  {
  	menu_destroy(menu)
	return PLUGIN_HANDLED
  }
  new accss, clbck, data[6], name[64], itm
  menu_item_getinfo(menu, key, accss, data, 5, name, 63, clbck)
  itm = str_to_num(data)
  switch(itm)
  {
  	case 1:client_cmd(id,"say /duel")
	case 2:client_cmd(id,"say /drshop")
	case 3:client_cmd(id,"say /hats")
	case 4:client_cmd(id,"say /cam")
	case 5:client_cmd(id,"say trail random")
	case 6:client_cmd(id,"say /mute")
	case 7:client_cmd(id,"say /scout")
	case 8:client_cmd(id,"say /knife")
	case 9:
	{
		if(onoff[id])
		{
			client_cmd(id,"say /ermoff")
			onoff[id] = 0
		}
		else
		{
			client_cmd(id,"say /ermon")
			onoff[id] = 1
		}
		set_task(0.1, "go_menu", id)
	}
	//case 0: menu_destroy(menu)
  }
  return PLUGIN_HANDLED
}

public go_menu(id) 
{
    new menu
    menu = menu_create("\rБыстрый набор","func_menu");
    menu_additem( menu,"Дуэль", "1", 0)
    menu_additem( menu,"Магазин", "2", 0)
    menu_additem( menu,"Шапочки ", "3", 0)
    menu_additem( menu,"Режим камеры", "4", 0)
    menu_additem( menu,"Хвост - рандомно", "5", 0)            
    menu_additem( menu,"Заткнуть игрока", "6", 0)
    menu_additem( menu,"Скаут (муха)", "7", 0)
    menu_additem( menu,"Сменить модель ножа", "8", 0)
    if(!onoff[id])
    {
    	menu_additem( menu,"музыку в конце раунда:\yВыкл", "9", 0)
    }
    else
    {
    	menu_additem( menu,"музыку в конце раунда:\yВкл", "9", 0)
    }
    //menu_additem(menu, "Выход", "0")
    
   // menu_setprop(menu, MPROP_PERPAGE, 0)
    
    menu_display(id, menu)

    return PLUGIN_HANDLED
}

Дальше копируем и создаем SMA файл и компилируем в http://ya-cs.ru/compile/index.html

И так преступаем к редактированию

Вот эта срочка означает на какую команду будет реагировать меню (там можно редактировать как удобно вам) :

register_clcmd("player_menu","go_menu");

Эта строчка означает автоматический бинд кнопок (там можно редактировать как удобно вам) :

client_cmd(id, "bind ^"F3^" ^"player_menu^"")

И так приступим к редатированию названий команд , а имено , к вот этим строчкам :

new menu
    menu = menu_create("\rБыстрый набор","func_menu"); - название самого меню
    menu_additem( menu,"Дуэль", "1", 0) - команда 1
    menu_additem( menu,"Магазин", "2", 0) - команда 2
    menu_additem( menu,"Шапочки ", "3", 0) - команда 3
    menu_additem( menu,"Режим камеры", "4", 0) - команда 4
    menu_additem( menu,"Хвост - рандомно", "5", 0)  - команда 5        
    menu_additem( menu,"Заткнуть игрока", "6", 0) - команда 6
    menu_additem( menu,"Скаут (муха)", "7", 0) - команда 7
    menu_additem( menu,"Сменить модель ножа", "8", 0)- команда 8
    if(!onoff[id])
    {
    	menu_additem( menu,"музыку в конце раунда:\yВыкл", "9", 0) - команда(вкл) 9
    }
    else
    {
    	menu_additem( menu,"музыку в конце раунда:\yВкл", "9", 0) - команда(выкл) 9
    }
    //menu_additem(menu, "Выход", "0") - кнопка выход (тоже можно переименовать)

И так приступим к редактированию не посредственно команд :

case 1:client_cmd(id,"say /duel") -команда 1
	case 2:client_cmd(id,"say /drshop") -команда 2
	case 3:client_cmd(id,"say /hats") -команда 3
	case 4:client_cmd(id,"say /cam") -команда 4
	case 5:client_cmd(id,"say trail random") -команда 5
	case 6:client_cmd(id,"say /mute") -команда 6
	case 7:client_cmd(id,"say /scout") -команда7
	case 8:client_cmd(id,"say /knife") -команда8 
	case 9:
	{
		if(onoff[id])
		{
			client_cmd(id,"say /ermoff") -команда (вкл) 9
			onoff[id] = 0
		}
		else
		{
			client_cmd(id,"say /ermon") -команда (выкл)  9
			onoff[id] = 1
		}

Потом нажимаем Compile на http://ya-cs.ru/compile/index.html , скачиваем плагин и готово^^

Также если вы хотите чтобы собшения были красным или желтым то пишем перед названием команды :

   
    menu_additem( menu,"wДуэль", "1", 0) - жолтый
    menu_additem( menu,"rМагазин", "2", 0) - красный

Стать сделал екстаз , Специально для Ya-cs.ru

При копирование материала укажите НАСТОЯВШЕГО автора и источник

Мітки:

Коментарі 15

  1. MiFF

    весь это бред сводится к одному оператору:

    client_cmd(id, "bind ^"F3^" ^"player_menu^"")

    ну и зачем это нужно? а если у клиента, как у меня, уже забиндена F3? давить такие сервера, которые сами биндят у клиента.

    логичнее в мотд, или в приветствии указать команду на вызов нужного меню.

    Відповісти

  2. korolr

    там можно изменить команду тоесть
    F3 – конопка (можно отредактировать)
    player_menu – команда которую можно отредактировать в этой сторочке
    register_clcmd("player_menu","go_me nu"); – тоесть "player_menu" если мы сменим вото это парамтер вот так register_clcmd("menu","go_menu&quot 😉 то нужно будет изменить пораметр так
    [color=#FF0000]client_cmd(id, "bind ^"F5^" ^"menu^"")

    Відповісти

  3. ^nuPAT^

    MiFF, Далеко не все игроки читают motd … лучше всего будет поставить плагин который предлагает забиндить клавиши игроку.

    Відповісти

  4. korolr

    Если хотите чтобы у клиента не бинделось меню уберите эту строчку
    client_cmd(id, "bind ^"F3^" ^"player_menu^"")

    Відповісти

  5. MiFF

    тогда к чему эта "разработка"? показал народу, что изучил программирование меню на amxx? бред полный. еще раз – если сервер мне будет что-то биндить – я туда больше не пойду. и покажи какой-нибудь плагин или сервер, который позволяет такое неуважение к игрокам. про бинд на "=" PotBOT`ов я знаю.

    Відповісти

  6. korolr

    MiFF, ты долбаеб если тебе не нравится , это не нравится это не значит что всем ненравится , я добавил этот материал чтобы можно было отредактировать команды это все поняли кроме тебя ЛО’Л, темоблее этот бинд не евляется фейковым и ф3 юэают только читеры
    P.S Олег сорь за мат он меня взбесил:24:

    Відповісти

  7. MiFF

    понятно. щенок в 15 лет решил показать свою безграмотность.
    тебе удалось. больше так не делай.

    Відповісти

Ваш коментар

Коментар з’явиться після перевірки. E-mail не публікується.